nvml: Update getDeviceFieldValue to check value of nvmlReturn and use correct valueType - #564
Conversation
|
I'm reviewing this PR. |
6cd066a to
9d48fd3
Compare
|
I tested these changes on the NVIDIA GH200 480GB device (Grace-Hopper architecture). The utility papi_command_line indeed reports reasonable event counts: ~/papi/src$ papi_command_line nvml:::NVIDIA_GH200_480GB:device_0:gpu_inst_power However, the ~/papi/src$ ./components/nvml/tests/HelloWorld @Treece-Burgess Does this error occur on your end? |
This error occurs even in the sample code If I go to Illyad on Oregon (1 * H100) with Cuda Toolkit 13.0.0, this error does not occur: This appears to be a system issue rather than a PAPI issue. |
… correct valueType
9d48fd3 to
878ea4f
Compare
Pull Request Description
This PR updates the function
getDeviceFieldValueto:nvmlReturnas it must be checked before looking atvalueasvalueis undefined ifnvmlReturn != NVML_SUCCESS.valueTypeas there are multiple:Due to not checking the
valueTypethere were cases when extremely large numbers would output fornvml:::NVIDIA_A100-PCIE-40GB:device_0:gpu_inst_power:Testing
Setup
Testing was done on Methane at ICL with:
Results
nvmlHelloWorld.cu test: ✅* -
papi_component_avail,papi_native_avail, andpapi_command_lineAuthor Checklist
Why this PR exists. Reference all relevant information, including background, issues, test failures, etc
Commits are self contained and only do one thing
Commits have a header of the form:
module: short descriptionCommits have a body (whenever relevant) containing a detailed description of the addressed problem and its solution
The PR needs to pass all the tests